#!/usr/bin/env python3
# -*- coding: utf-8 -*-
"""
配置管理模块
"""
import configparser
import os

# 全局配置
config = configparser.ConfigParser()


def load_config():
    """加载配置文件"""
    if not os.path.exists('config/config.ini'):
        create_default_config()
    config.read('config/config.ini', encoding='utf-8')


def create_default_config():
    """创建默认配置文件"""
    os.makedirs('config', exist_ok=True)
    
    # 保留现有配置（如果存在）
    existing_config = configparser.ConfigParser()
    if os.path.exists('config/config.ini'):
        existing_config.read('config/config.ini', encoding='utf-8')
    
    config['DEFAULT'] = {
        'app_name': '密码管理',
        'company_short': '子鞍',
        'company_full': '顾子鞍',
        'web_port': '8090',
        'admin_username': 'admin',
        'admin_password': 'guzian0222',
    }
    
    # 初始化EMAIL部分，保留现有配置（如果存在）
    config['EMAIL'] = {
       'smtp_server': existing_config.get('EMAIL', 'smtp_server', fallback='smtp.163.com'),
       'smtp_port': existing_config.get('EMAIL', 'smtp_port', fallback='465'),
       'smtp_user': existing_config.get('EMAIL', 'smtp_user', fallback=''),
        'smtp_password': existing_config.get('EMAIL', 'smtp_password', fallback=''),
        'smtp_from': existing_config.get('EMAIL', 'smtp_from', fallback=''),
    }
    
    with open('config/config.ini', 'w', encoding='utf-8') as configfile:
        config.write(configfile)